package com.ourteam.system.dao;

import net.dao.BaseQueryBean;
import net.dao.BaseWhereCriterion;
import net.dao.IDataAccessInterface;

import org.apache.commons.lang.StringUtils;

import java.util.Arrays;
import java.util.List;
import java.util.Map;


/**
 * Template Name : DAO查询对象
 * Template Version : 1
 * Template Last Modfiy Date : Sat Aug 19 10:06:32 CST 2017
 * Auto Generate Date : 2018-07-31 15:13:30
  * Warning ! This file will be overwrite when regenerate !
  *
 */
public class SysPropertyDAOQueryBean extends BaseQueryBean {
    public SysPropertyDAOQueryBean() {
        super();
    }

    public SysPropertyDAOQueryBean(BaseQueryBean aQueryBean) {
        super(aQueryBean);
    }

    public SysPropertyDAOQueryBean(BaseQueryBean aQueryBean, Map tableReplaceMap) {
        super(aQueryBean, tableReplaceMap);
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();

        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }

        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        return new Criteria(this);
    }

    public void addIdSelectProperty() {
        addIdSelectProperty("id");
    }

    public void addIdSelectProperty(String aAlias) {
        if (StringUtils.isNotBlank(aAlias)) {
            addSelectProperty(ISysPropertyDAO.Id, aAlias);
        } else {
            addSelectProperty(ISysPropertyDAO.Id, "id");
        }
    }

    public void addPropertyCatalogSelectProperty() {
        addPropertyCatalogSelectProperty("propertyCatalog");
    }

    public void addPropertyCatalogSelectProperty(String aAlias) {
        if (StringUtils.isNotBlank(aAlias)) {
            addSelectProperty(ISysPropertyDAO.PropertyCatalog, aAlias);
        } else {
            addSelectProperty(ISysPropertyDAO.PropertyCatalog, "propertyCatalog");
        }
    }

    public void addPropertyCodeSelectProperty() {
        addPropertyCodeSelectProperty("propertyCode");
    }

    public void addPropertyCodeSelectProperty(String aAlias) {
        if (StringUtils.isNotBlank(aAlias)) {
            addSelectProperty(ISysPropertyDAO.PropertyCode, aAlias);
        } else {
            addSelectProperty(ISysPropertyDAO.PropertyCode, "propertyCode");
        }
    }

    public void addPropertyNameSelectProperty() {
        addPropertyNameSelectProperty("propertyName");
    }

    public void addPropertyNameSelectProperty(String aAlias) {
        if (StringUtils.isNotBlank(aAlias)) {
            addSelectProperty(ISysPropertyDAO.PropertyName, aAlias);
        } else {
            addSelectProperty(ISysPropertyDAO.PropertyName, "propertyName");
        }
    }

    public void addPropertyValueSelectProperty() {
        addPropertyValueSelectProperty("propertyValue");
    }

    public void addPropertyValueSelectProperty(String aAlias) {
        if (StringUtils.isNotBlank(aAlias)) {
            addSelectProperty(ISysPropertyDAO.PropertyValue, aAlias);
        } else {
            addSelectProperty(ISysPropertyDAO.PropertyValue, "propertyValue");
        }
    }

    public void addStatusSelectProperty() {
        addStatusSelectProperty("status");
    }

    public void addStatusSelectProperty(String aAlias) {
        if (StringUtils.isNotBlank(aAlias)) {
            addSelectProperty(ISysPropertyDAO.Status, aAlias);
        } else {
            addSelectProperty(ISysPropertyDAO.Status, "status");
        }
    }

    public void addRemarksSelectProperty() {
        addRemarksSelectProperty("remarks");
    }

    public void addRemarksSelectProperty(String aAlias) {
        if (StringUtils.isNotBlank(aAlias)) {
            addSelectProperty(ISysPropertyDAO.Remarks, aAlias);
        } else {
            addSelectProperty(ISysPropertyDAO.Remarks, "remarks");
        }
    }

    public void addAllSelectProperties() {
        addIdSelectProperty();

        addPropertyCatalogSelectProperty();

        addPropertyCodeSelectProperty();

        addPropertyNameSelectProperty();

        addPropertyValueSelectProperty();

        addStatusSelectProperty();

        addRemarksSelectProperty();
    }

    public static class Criteria extends BaseWhereCriterion<SysPropertyDAOQueryBean> {
        protected Criteria(SysPropertyDAOQueryBean aParentObject) {
            super(aParentObject);
        }

        public Criteria andIdIsNull() {
            addCriterion(ISysPropertyDAO.Id + " is null");

            return this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion(ISysPropertyDAO.Id + " is not null");

            return this;
        }

        public Criteria andIdIsNotEmpty() {
            addCriterion(ISysPropertyDAO.Id + " is not null AND " +
                ISysPropertyDAO.Id + " <> ''");

            return this;
        }

        public Criteria andIdIsEmpty() {
            addCriterion("(" + ISysPropertyDAO.Id + " is null OR " +
                ISysPropertyDAO.Id + " = '')");

            return this;
        }

        public Criteria andIdEqualTo(long value) {
            return andIdEqualTo(Long.valueOf(value));
        }

        public Criteria andIdEqualTo(java.lang.Long value) {
            addCriterion(ISysPropertyDAO.Id + " = ", value, "id");

            return this;
        }

        public Criteria andIdEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.Id);
            str.append(" = ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andIdEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.Id + " = ", subQueryBean, dao);

            return this;
        }

        public Criteria andIdNotEqualTo(long value) {
            return andIdNotEqualTo(Long.valueOf(value));
        }

        public Criteria andIdNotEqualTo(java.lang.Long value) {
            addCriterion(ISysPropertyDAO.Id + " <>", value, "id");

            return this;
        }

        public Criteria andIdNotEqualToOrIsNull(long value) {
            return andIdNotEqualToOrIsNull(Long.valueOf(value));
        }

        public Criteria andIdNotEqualToOrIsNull(java.lang.Long value) {
            addCriterion(ISysPropertyDAO.Id + " is null OR " +
                ISysPropertyDAO.Id + " <>", value, "id");

            return this;
        }

        public Criteria andIdNotEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.Id);
            str.append(" <> ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andIdNotEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.Id + " <> ", subQueryBean, dao);

            return this;
        }

        public Criteria andIdGreaterThan(long value) {
            return andIdGreaterThan(Long.valueOf(value));
        }

        public Criteria andIdGreaterThan(java.lang.Long value) {
            addCriterion(ISysPropertyDAO.Id + " >", value, "id");

            return this;
        }

        public Criteria andIdGreaterThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.Id);
            str.append(" > ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andIdGreaterThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.Id + " > ", subQueryBean, dao);

            return this;
        }

        public Criteria andIdGreaterThanOrEqualTo(long value) {
            return andIdGreaterThanOrEqualTo(Long.valueOf(value));
        }

        public Criteria andIdGreaterThanOrEqualTo(java.lang.Long value) {
            addCriterion(ISysPropertyDAO.Id + " >=", value, "id");

            return this;
        }

        public Criteria andIdGreaterThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.Id);
            str.append(" >= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andIdGreaterThanOrEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.Id + " >= ", subQueryBean, dao);

            return this;
        }

        public Criteria andIdLessThan(long value) {
            return andIdLessThan(Long.valueOf(value));
        }

        public Criteria andIdLessThan(java.lang.Long value) {
            addCriterion(ISysPropertyDAO.Id + " <", value, "id");

            return this;
        }

        public Criteria andIdLessThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.Id);
            str.append(" < ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andIdLessThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.Id + " < ", subQueryBean, dao);

            return this;
        }

        public Criteria andIdLessThanOrEqualTo(long value) {
            return andIdLessThanOrEqualTo(Long.valueOf(value));
        }

        public Criteria andIdLessThanOrEqualTo(java.lang.Long value) {
            addCriterion(ISysPropertyDAO.Id + " <=", value, "id");

            return this;
        }

        public Criteria andIdLessThanOrEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.Id);
            str.append(" <= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andIdLessThanOrEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.Id + " <= ", subQueryBean, dao);

            return this;
        }

        public Criteria andIdIn(long[] values) {
            if (values.length == 1) {
                return andIdEqualTo((java.lang.Long) values[0]);
            } else {
                addCriterion(ISysPropertyDAO.Id + " in", values, "id");

                return this;
            }
        }

        public Criteria andIdNotIn(long[] values) {
            if (values.length == 1) {
                return andIdNotEqualTo((java.lang.Long) values[0]);
            } else {
                addCriterion(ISysPropertyDAO.Id + " not in", values, "id");

                return this;
            }
        }

        public Criteria andIdIn(List<java.lang.Long> values) {
            if (values.size() == 1) {
                return andIdEqualTo(values.get(0));
            } else {
                addCriterion(ISysPropertyDAO.Id + " in", values, "id");

                return this;
            }
        }

        public Criteria andIdNotIn(List<java.lang.Long> values) {
            if (values.size() == 1) {
                return andIdNotEqualTo(values.get(0));
            } else {
                addCriterion(ISysPropertyDAO.Id + " not in", values, "id");

                return this;
            }
        }

        public Criteria andIdIn(java.lang.Long[] values) {
            if (values.length == 1) {
                return andIdEqualTo(values[0]);
            } else {
                addCriterion(ISysPropertyDAO.Id + " in", Arrays.asList(values),
                    "id");

                return this;
            }
        }

        public Criteria andIdNotIn(java.lang.Long[] values) {
            if (values.length == 1) {
                return andIdNotEqualTo(values[0]);
            } else {
                addCriterion(ISysPropertyDAO.Id + " not in",
                    Arrays.asList(values), "id");

                return this;
            }
        }

        public Criteria andIdIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.Id + " in ", subQueryBean, dao);

            return this;
        }

        public Criteria andIdNotIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.Id + " not in ", subQueryBean, dao);

            return this;
        }

        public Criteria andIdBetween(long value1, long value2) {
            addCriterion(ISysPropertyDAO.Id + " between", value1, value2, "id");

            return this;
        }

        public Criteria andIdBetween(java.lang.Long value1,
            java.lang.Long value2) {
            addCriterion(ISysPropertyDAO.Id + " between", value1, value2, "id");

            return this;
        }

        public Criteria andIdNotBetween(long value1, long value2) {
            addCriterion(ISysPropertyDAO.Id + " not between", value1, value2,
                "id");

            return this;
        }

        public Criteria andIdNotBetween(java.lang.Long value1,
            java.lang.Long value2) {
            addCriterion(ISysPropertyDAO.Id + " not between", value1, value2,
                "id");

            return this;
        }

        public Criteria andPropertyCatalogIsNull() {
            addCriterion(ISysPropertyDAO.PropertyCatalog + " is null");

            return this;
        }

        public Criteria andPropertyCatalogIsNotNull() {
            addCriterion(ISysPropertyDAO.PropertyCatalog + " is not null");

            return this;
        }

        public Criteria andPropertyCatalogIsNotEmpty() {
            addCriterion(ISysPropertyDAO.PropertyCatalog + " is not null AND " +
                ISysPropertyDAO.PropertyCatalog + " <> ''");

            return this;
        }

        public Criteria andPropertyCatalogIsEmpty() {
            addCriterion("(" + ISysPropertyDAO.PropertyCatalog +
                " is null OR " + ISysPropertyDAO.PropertyCatalog + " = '')");

            return this;
        }

        public Criteria andPropertyCatalogEqualTo(String value) {
            addCriterion(ISysPropertyDAO.PropertyCatalog + " = ", value,
                "propertyCatalog");

            return this;
        }

        public Criteria andPropertyCatalogEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.PropertyCatalog);
            str.append(" = ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andPropertyCatalogEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyCatalog + " = ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andPropertyCatalogNotEqualTo(String value) {
            addCriterion(ISysPropertyDAO.PropertyCatalog + " <>", value,
                "propertyCatalog");

            return this;
        }

        public Criteria andPropertyCatalogNotEqualToOrIsNull(String value) {
            addCriterion(ISysPropertyDAO.PropertyCatalog + " is null OR " +
                ISysPropertyDAO.PropertyCatalog + " <>", value,
                "propertyCatalog");

            return this;
        }

        public Criteria andPropertyCatalogNotEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.PropertyCatalog);
            str.append(" <> ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andPropertyCatalogNotEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyCatalog + " <> ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andPropertyCatalogGreaterThan(String value) {
            addCriterion(ISysPropertyDAO.PropertyCatalog + " >", value,
                "propertyCatalog");

            return this;
        }

        public Criteria andPropertyCatalogGreaterThanForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.PropertyCatalog);
            str.append(" > ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andPropertyCatalogGreaterThan(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyCatalog + " > ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andPropertyCatalogGreaterThanOrEqualTo(String value) {
            addCriterion(ISysPropertyDAO.PropertyCatalog + " >=", value,
                "propertyCatalog");

            return this;
        }

        public Criteria andPropertyCatalogGreaterThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.PropertyCatalog);
            str.append(" >= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andPropertyCatalogGreaterThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyCatalog + " >= ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andPropertyCatalogLessThan(String value) {
            addCriterion(ISysPropertyDAO.PropertyCatalog + " <", value,
                "propertyCatalog");

            return this;
        }

        public Criteria andPropertyCatalogLessThanForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.PropertyCatalog);
            str.append(" < ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andPropertyCatalogLessThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyCatalog + " < ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andPropertyCatalogLessThanOrEqualTo(String value) {
            addCriterion(ISysPropertyDAO.PropertyCatalog + " <=", value,
                "propertyCatalog");

            return this;
        }

        public Criteria andPropertyCatalogLessThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.PropertyCatalog);
            str.append(" <= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andPropertyCatalogLessThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyCatalog + " <= ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andPropertyCatalogLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(ISysPropertyDAO.PropertyCatalog + " like",
                buffer.toString(), "propertyCatalog");

            return this;
        }

        public Criteria andPropertyCatalogNotLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(ISysPropertyDAO.PropertyCatalog + " not like",
                buffer.toString(), "propertyCatalog");

            return this;
        }

        public Criteria andPropertyCatalogIn(List<String> values) {
            if (values.size() == 1) {
                return andPropertyCatalogEqualTo(values.get(0));
            } else {
                addCriterion(ISysPropertyDAO.PropertyCatalog + " in", values,
                    "propertyCatalog");

                return this;
            }
        }

        public Criteria andPropertyCatalogNotIn(List<String> values) {
            if (values.size() == 1) {
                return andPropertyCatalogNotEqualTo(values.get(0));
            } else {
                addCriterion(ISysPropertyDAO.PropertyCatalog + " not in",
                    values, "propertyCatalog");

                return this;
            }
        }

        public Criteria andPropertyCatalogIn(String[] values) {
            if (values.length == 1) {
                return andPropertyCatalogEqualTo(values[0]);
            } else {
                addCriterion(ISysPropertyDAO.PropertyCatalog + " in",
                    Arrays.asList(values), "propertyCatalog");

                return this;
            }
        }

        public Criteria andPropertyCatalogNotIn(String[] values) {
            if (values.length == 1) {
                return andPropertyCatalogNotEqualTo(values[0]);
            } else {
                addCriterion(ISysPropertyDAO.PropertyCatalog + " not in",
                    Arrays.asList(values), "propertyCatalog");

                return this;
            }
        }

        public Criteria andPropertyCatalogIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyCatalog + " in ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andPropertyCatalogNotIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyCatalog + " not in ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andPropertyCatalogBetween(String value1, String value2) {
            addCriterion(ISysPropertyDAO.PropertyCatalog + " between", value1,
                value2, "propertyCatalog");

            return this;
        }

        public Criteria andPropertyCatalogNotBetween(String value1,
            String value2) {
            addCriterion(ISysPropertyDAO.PropertyCatalog + " not between",
                value1, value2, "propertyCatalog");

            return this;
        }

        public Criteria andPropertyCodeIsNull() {
            addCriterion(ISysPropertyDAO.PropertyCode + " is null");

            return this;
        }

        public Criteria andPropertyCodeIsNotNull() {
            addCriterion(ISysPropertyDAO.PropertyCode + " is not null");

            return this;
        }

        public Criteria andPropertyCodeIsNotEmpty() {
            addCriterion(ISysPropertyDAO.PropertyCode + " is not null AND " +
                ISysPropertyDAO.PropertyCode + " <> ''");

            return this;
        }

        public Criteria andPropertyCodeIsEmpty() {
            addCriterion("(" + ISysPropertyDAO.PropertyCode + " is null OR " +
                ISysPropertyDAO.PropertyCode + " = '')");

            return this;
        }

        public Criteria andPropertyCodeEqualTo(String value) {
            addCriterion(ISysPropertyDAO.PropertyCode + " = ", value,
                "propertyCode");

            return this;
        }

        public Criteria andPropertyCodeEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.PropertyCode);
            str.append(" = ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andPropertyCodeEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyCode + " = ", subQueryBean, dao);

            return this;
        }

        public Criteria andPropertyCodeNotEqualTo(String value) {
            addCriterion(ISysPropertyDAO.PropertyCode + " <>", value,
                "propertyCode");

            return this;
        }

        public Criteria andPropertyCodeNotEqualToOrIsNull(String value) {
            addCriterion(ISysPropertyDAO.PropertyCode + " is null OR " +
                ISysPropertyDAO.PropertyCode + " <>", value, "propertyCode");

            return this;
        }

        public Criteria andPropertyCodeNotEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.PropertyCode);
            str.append(" <> ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andPropertyCodeNotEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyCode + " <> ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andPropertyCodeGreaterThan(String value) {
            addCriterion(ISysPropertyDAO.PropertyCode + " >", value,
                "propertyCode");

            return this;
        }

        public Criteria andPropertyCodeGreaterThanForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.PropertyCode);
            str.append(" > ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andPropertyCodeGreaterThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyCode + " > ", subQueryBean, dao);

            return this;
        }

        public Criteria andPropertyCodeGreaterThanOrEqualTo(String value) {
            addCriterion(ISysPropertyDAO.PropertyCode + " >=", value,
                "propertyCode");

            return this;
        }

        public Criteria andPropertyCodeGreaterThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.PropertyCode);
            str.append(" >= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andPropertyCodeGreaterThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyCode + " >= ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andPropertyCodeLessThan(String value) {
            addCriterion(ISysPropertyDAO.PropertyCode + " <", value,
                "propertyCode");

            return this;
        }

        public Criteria andPropertyCodeLessThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.PropertyCode);
            str.append(" < ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andPropertyCodeLessThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyCode + " < ", subQueryBean, dao);

            return this;
        }

        public Criteria andPropertyCodeLessThanOrEqualTo(String value) {
            addCriterion(ISysPropertyDAO.PropertyCode + " <=", value,
                "propertyCode");

            return this;
        }

        public Criteria andPropertyCodeLessThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.PropertyCode);
            str.append(" <= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andPropertyCodeLessThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyCode + " <= ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andPropertyCodeLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(ISysPropertyDAO.PropertyCode + " like",
                buffer.toString(), "propertyCode");

            return this;
        }

        public Criteria andPropertyCodeNotLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(ISysPropertyDAO.PropertyCode + " not like",
                buffer.toString(), "propertyCode");

            return this;
        }

        public Criteria andPropertyCodeIn(List<String> values) {
            if (values.size() == 1) {
                return andPropertyCodeEqualTo(values.get(0));
            } else {
                addCriterion(ISysPropertyDAO.PropertyCode + " in", values,
                    "propertyCode");

                return this;
            }
        }

        public Criteria andPropertyCodeNotIn(List<String> values) {
            if (values.size() == 1) {
                return andPropertyCodeNotEqualTo(values.get(0));
            } else {
                addCriterion(ISysPropertyDAO.PropertyCode + " not in", values,
                    "propertyCode");

                return this;
            }
        }

        public Criteria andPropertyCodeIn(String[] values) {
            if (values.length == 1) {
                return andPropertyCodeEqualTo(values[0]);
            } else {
                addCriterion(ISysPropertyDAO.PropertyCode + " in",
                    Arrays.asList(values), "propertyCode");

                return this;
            }
        }

        public Criteria andPropertyCodeNotIn(String[] values) {
            if (values.length == 1) {
                return andPropertyCodeNotEqualTo(values[0]);
            } else {
                addCriterion(ISysPropertyDAO.PropertyCode + " not in",
                    Arrays.asList(values), "propertyCode");

                return this;
            }
        }

        public Criteria andPropertyCodeIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyCode + " in ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andPropertyCodeNotIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyCode + " not in ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andPropertyCodeBetween(String value1, String value2) {
            addCriterion(ISysPropertyDAO.PropertyCode + " between", value1,
                value2, "propertyCode");

            return this;
        }

        public Criteria andPropertyCodeNotBetween(String value1, String value2) {
            addCriterion(ISysPropertyDAO.PropertyCode + " not between", value1,
                value2, "propertyCode");

            return this;
        }

        public Criteria andPropertyNameIsNull() {
            addCriterion(ISysPropertyDAO.PropertyName + " is null");

            return this;
        }

        public Criteria andPropertyNameIsNotNull() {
            addCriterion(ISysPropertyDAO.PropertyName + " is not null");

            return this;
        }

        public Criteria andPropertyNameIsNotEmpty() {
            addCriterion(ISysPropertyDAO.PropertyName + " is not null AND " +
                ISysPropertyDAO.PropertyName + " <> ''");

            return this;
        }

        public Criteria andPropertyNameIsEmpty() {
            addCriterion("(" + ISysPropertyDAO.PropertyName + " is null OR " +
                ISysPropertyDAO.PropertyName + " = '')");

            return this;
        }

        public Criteria andPropertyNameEqualTo(String value) {
            addCriterion(ISysPropertyDAO.PropertyName + " = ", value,
                "propertyName");

            return this;
        }

        public Criteria andPropertyNameEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.PropertyName);
            str.append(" = ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andPropertyNameEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyName + " = ", subQueryBean, dao);

            return this;
        }

        public Criteria andPropertyNameNotEqualTo(String value) {
            addCriterion(ISysPropertyDAO.PropertyName + " <>", value,
                "propertyName");

            return this;
        }

        public Criteria andPropertyNameNotEqualToOrIsNull(String value) {
            addCriterion(ISysPropertyDAO.PropertyName + " is null OR " +
                ISysPropertyDAO.PropertyName + " <>", value, "propertyName");

            return this;
        }

        public Criteria andPropertyNameNotEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.PropertyName);
            str.append(" <> ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andPropertyNameNotEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyName + " <> ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andPropertyNameGreaterThan(String value) {
            addCriterion(ISysPropertyDAO.PropertyName + " >", value,
                "propertyName");

            return this;
        }

        public Criteria andPropertyNameGreaterThanForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.PropertyName);
            str.append(" > ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andPropertyNameGreaterThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyName + " > ", subQueryBean, dao);

            return this;
        }

        public Criteria andPropertyNameGreaterThanOrEqualTo(String value) {
            addCriterion(ISysPropertyDAO.PropertyName + " >=", value,
                "propertyName");

            return this;
        }

        public Criteria andPropertyNameGreaterThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.PropertyName);
            str.append(" >= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andPropertyNameGreaterThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyName + " >= ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andPropertyNameLessThan(String value) {
            addCriterion(ISysPropertyDAO.PropertyName + " <", value,
                "propertyName");

            return this;
        }

        public Criteria andPropertyNameLessThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.PropertyName);
            str.append(" < ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andPropertyNameLessThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyName + " < ", subQueryBean, dao);

            return this;
        }

        public Criteria andPropertyNameLessThanOrEqualTo(String value) {
            addCriterion(ISysPropertyDAO.PropertyName + " <=", value,
                "propertyName");

            return this;
        }

        public Criteria andPropertyNameLessThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.PropertyName);
            str.append(" <= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andPropertyNameLessThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyName + " <= ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andPropertyNameLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(ISysPropertyDAO.PropertyName + " like",
                buffer.toString(), "propertyName");

            return this;
        }

        public Criteria andPropertyNameNotLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(ISysPropertyDAO.PropertyName + " not like",
                buffer.toString(), "propertyName");

            return this;
        }

        public Criteria andPropertyNameIn(List<String> values) {
            if (values.size() == 1) {
                return andPropertyNameEqualTo(values.get(0));
            } else {
                addCriterion(ISysPropertyDAO.PropertyName + " in", values,
                    "propertyName");

                return this;
            }
        }

        public Criteria andPropertyNameNotIn(List<String> values) {
            if (values.size() == 1) {
                return andPropertyNameNotEqualTo(values.get(0));
            } else {
                addCriterion(ISysPropertyDAO.PropertyName + " not in", values,
                    "propertyName");

                return this;
            }
        }

        public Criteria andPropertyNameIn(String[] values) {
            if (values.length == 1) {
                return andPropertyNameEqualTo(values[0]);
            } else {
                addCriterion(ISysPropertyDAO.PropertyName + " in",
                    Arrays.asList(values), "propertyName");

                return this;
            }
        }

        public Criteria andPropertyNameNotIn(String[] values) {
            if (values.length == 1) {
                return andPropertyNameNotEqualTo(values[0]);
            } else {
                addCriterion(ISysPropertyDAO.PropertyName + " not in",
                    Arrays.asList(values), "propertyName");

                return this;
            }
        }

        public Criteria andPropertyNameIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyName + " in ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andPropertyNameNotIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyName + " not in ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andPropertyNameBetween(String value1, String value2) {
            addCriterion(ISysPropertyDAO.PropertyName + " between", value1,
                value2, "propertyName");

            return this;
        }

        public Criteria andPropertyNameNotBetween(String value1, String value2) {
            addCriterion(ISysPropertyDAO.PropertyName + " not between", value1,
                value2, "propertyName");

            return this;
        }

        public Criteria andPropertyValueIsNull() {
            addCriterion(ISysPropertyDAO.PropertyValue + " is null");

            return this;
        }

        public Criteria andPropertyValueIsNotNull() {
            addCriterion(ISysPropertyDAO.PropertyValue + " is not null");

            return this;
        }

        public Criteria andPropertyValueIsNotEmpty() {
            addCriterion(ISysPropertyDAO.PropertyValue + " is not null AND " +
                ISysPropertyDAO.PropertyValue + " <> ''");

            return this;
        }

        public Criteria andPropertyValueIsEmpty() {
            addCriterion("(" + ISysPropertyDAO.PropertyValue + " is null OR " +
                ISysPropertyDAO.PropertyValue + " = '')");

            return this;
        }

        public Criteria andPropertyValueEqualTo(String value) {
            addCriterion(ISysPropertyDAO.PropertyValue + " = ", value,
                "propertyValue");

            return this;
        }

        public Criteria andPropertyValueEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.PropertyValue);
            str.append(" = ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andPropertyValueEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyValue + " = ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andPropertyValueNotEqualTo(String value) {
            addCriterion(ISysPropertyDAO.PropertyValue + " <>", value,
                "propertyValue");

            return this;
        }

        public Criteria andPropertyValueNotEqualToOrIsNull(String value) {
            addCriterion(ISysPropertyDAO.PropertyValue + " is null OR " +
                ISysPropertyDAO.PropertyValue + " <>", value, "propertyValue");

            return this;
        }

        public Criteria andPropertyValueNotEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.PropertyValue);
            str.append(" <> ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andPropertyValueNotEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyValue + " <> ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andPropertyValueGreaterThan(String value) {
            addCriterion(ISysPropertyDAO.PropertyValue + " >", value,
                "propertyValue");

            return this;
        }

        public Criteria andPropertyValueGreaterThanForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.PropertyValue);
            str.append(" > ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andPropertyValueGreaterThan(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyValue + " > ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andPropertyValueGreaterThanOrEqualTo(String value) {
            addCriterion(ISysPropertyDAO.PropertyValue + " >=", value,
                "propertyValue");

            return this;
        }

        public Criteria andPropertyValueGreaterThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.PropertyValue);
            str.append(" >= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andPropertyValueGreaterThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyValue + " >= ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andPropertyValueLessThan(String value) {
            addCriterion(ISysPropertyDAO.PropertyValue + " <", value,
                "propertyValue");

            return this;
        }

        public Criteria andPropertyValueLessThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.PropertyValue);
            str.append(" < ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andPropertyValueLessThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyValue + " < ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andPropertyValueLessThanOrEqualTo(String value) {
            addCriterion(ISysPropertyDAO.PropertyValue + " <=", value,
                "propertyValue");

            return this;
        }

        public Criteria andPropertyValueLessThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.PropertyValue);
            str.append(" <= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andPropertyValueLessThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyValue + " <= ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andPropertyValueLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(ISysPropertyDAO.PropertyValue + " like",
                buffer.toString(), "propertyValue");

            return this;
        }

        public Criteria andPropertyValueNotLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(ISysPropertyDAO.PropertyValue + " not like",
                buffer.toString(), "propertyValue");

            return this;
        }

        public Criteria andPropertyValueIn(List<String> values) {
            if (values.size() == 1) {
                return andPropertyValueEqualTo(values.get(0));
            } else {
                addCriterion(ISysPropertyDAO.PropertyValue + " in", values,
                    "propertyValue");

                return this;
            }
        }

        public Criteria andPropertyValueNotIn(List<String> values) {
            if (values.size() == 1) {
                return andPropertyValueNotEqualTo(values.get(0));
            } else {
                addCriterion(ISysPropertyDAO.PropertyValue + " not in", values,
                    "propertyValue");

                return this;
            }
        }

        public Criteria andPropertyValueIn(String[] values) {
            if (values.length == 1) {
                return andPropertyValueEqualTo(values[0]);
            } else {
                addCriterion(ISysPropertyDAO.PropertyValue + " in",
                    Arrays.asList(values), "propertyValue");

                return this;
            }
        }

        public Criteria andPropertyValueNotIn(String[] values) {
            if (values.length == 1) {
                return andPropertyValueNotEqualTo(values[0]);
            } else {
                addCriterion(ISysPropertyDAO.PropertyValue + " not in",
                    Arrays.asList(values), "propertyValue");

                return this;
            }
        }

        public Criteria andPropertyValueIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyValue + " in ", subQueryBean,
                dao);

            return this;
        }

        public Criteria andPropertyValueNotIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.PropertyValue + " not in ",
                subQueryBean, dao);

            return this;
        }

        public Criteria andPropertyValueBetween(String value1, String value2) {
            addCriterion(ISysPropertyDAO.PropertyValue + " between", value1,
                value2, "propertyValue");

            return this;
        }

        public Criteria andPropertyValueNotBetween(String value1, String value2) {
            addCriterion(ISysPropertyDAO.PropertyValue + " not between",
                value1, value2, "propertyValue");

            return this;
        }

        public Criteria andStatusIsNull() {
            addCriterion(ISysPropertyDAO.Status + " is null");

            return this;
        }

        public Criteria andStatusIsNotNull() {
            addCriterion(ISysPropertyDAO.Status + " is not null");

            return this;
        }

        public Criteria andStatusIsNotEmpty() {
            addCriterion(ISysPropertyDAO.Status + " is not null AND " +
                ISysPropertyDAO.Status + " <> ''");

            return this;
        }

        public Criteria andStatusIsEmpty() {
            addCriterion("(" + ISysPropertyDAO.Status + " is null OR " +
                ISysPropertyDAO.Status + " = '')");

            return this;
        }

        public Criteria andStatusEqualTo(String value) {
            addCriterion(ISysPropertyDAO.Status + " = ", value, "status");

            return this;
        }

        public Criteria andStatusEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.Status);
            str.append(" = ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStatusEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.Status + " = ", subQueryBean, dao);

            return this;
        }

        public Criteria andStatusNotEqualTo(String value) {
            addCriterion(ISysPropertyDAO.Status + " <>", value, "status");

            return this;
        }

        public Criteria andStatusNotEqualToOrIsNull(String value) {
            addCriterion(ISysPropertyDAO.Status + " is null OR " +
                ISysPropertyDAO.Status + " <>", value, "status");

            return this;
        }

        public Criteria andStatusNotEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.Status);
            str.append(" <> ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStatusNotEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.Status + " <> ", subQueryBean, dao);

            return this;
        }

        public Criteria andStatusGreaterThan(String value) {
            addCriterion(ISysPropertyDAO.Status + " >", value, "status");

            return this;
        }

        public Criteria andStatusGreaterThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.Status);
            str.append(" > ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStatusGreaterThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.Status + " > ", subQueryBean, dao);

            return this;
        }

        public Criteria andStatusGreaterThanOrEqualTo(String value) {
            addCriterion(ISysPropertyDAO.Status + " >=", value, "status");

            return this;
        }

        public Criteria andStatusGreaterThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.Status);
            str.append(" >= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStatusGreaterThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.Status + " >= ", subQueryBean, dao);

            return this;
        }

        public Criteria andStatusLessThan(String value) {
            addCriterion(ISysPropertyDAO.Status + " <", value, "status");

            return this;
        }

        public Criteria andStatusLessThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.Status);
            str.append(" < ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStatusLessThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.Status + " < ", subQueryBean, dao);

            return this;
        }

        public Criteria andStatusLessThanOrEqualTo(String value) {
            addCriterion(ISysPropertyDAO.Status + " <=", value, "status");

            return this;
        }

        public Criteria andStatusLessThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.Status);
            str.append(" <= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andStatusLessThanOrEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.Status + " <= ", subQueryBean, dao);

            return this;
        }

        public Criteria andStatusLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(ISysPropertyDAO.Status + " like", buffer.toString(),
                "status");

            return this;
        }

        public Criteria andStatusNotLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(ISysPropertyDAO.Status + " not like",
                buffer.toString(), "status");

            return this;
        }

        public Criteria andStatusIn(List<String> values) {
            if (values.size() == 1) {
                return andStatusEqualTo(values.get(0));
            } else {
                addCriterion(ISysPropertyDAO.Status + " in", values, "status");

                return this;
            }
        }

        public Criteria andStatusNotIn(List<String> values) {
            if (values.size() == 1) {
                return andStatusNotEqualTo(values.get(0));
            } else {
                addCriterion(ISysPropertyDAO.Status + " not in", values,
                    "status");

                return this;
            }
        }

        public Criteria andStatusIn(String[] values) {
            if (values.length == 1) {
                return andStatusEqualTo(values[0]);
            } else {
                addCriterion(ISysPropertyDAO.Status + " in",
                    Arrays.asList(values), "status");

                return this;
            }
        }

        public Criteria andStatusNotIn(String[] values) {
            if (values.length == 1) {
                return andStatusNotEqualTo(values[0]);
            } else {
                addCriterion(ISysPropertyDAO.Status + " not in",
                    Arrays.asList(values), "status");

                return this;
            }
        }

        public Criteria andStatusIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.Status + " in ", subQueryBean, dao);

            return this;
        }

        public Criteria andStatusNotIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.Status + " not in ", subQueryBean, dao);

            return this;
        }

        public Criteria andStatusBetween(String value1, String value2) {
            addCriterion(ISysPropertyDAO.Status + " between", value1, value2,
                "status");

            return this;
        }

        public Criteria andStatusNotBetween(String value1, String value2) {
            addCriterion(ISysPropertyDAO.Status + " not between", value1,
                value2, "status");

            return this;
        }

        public Criteria andRemarksIsNull() {
            addCriterion(ISysPropertyDAO.Remarks + " is null");

            return this;
        }

        public Criteria andRemarksIsNotNull() {
            addCriterion(ISysPropertyDAO.Remarks + " is not null");

            return this;
        }

        public Criteria andRemarksIsNotEmpty() {
            addCriterion(ISysPropertyDAO.Remarks + " is not null AND " +
                ISysPropertyDAO.Remarks + " <> ''");

            return this;
        }

        public Criteria andRemarksIsEmpty() {
            addCriterion("(" + ISysPropertyDAO.Remarks + " is null OR " +
                ISysPropertyDAO.Remarks + " = '')");

            return this;
        }

        public Criteria andRemarksEqualTo(String value) {
            addCriterion(ISysPropertyDAO.Remarks + " = ", value, "remarks");

            return this;
        }

        public Criteria andRemarksEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.Remarks);
            str.append(" = ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andRemarksEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.Remarks + " = ", subQueryBean, dao);

            return this;
        }

        public Criteria andRemarksNotEqualTo(String value) {
            addCriterion(ISysPropertyDAO.Remarks + " <>", value, "remarks");

            return this;
        }

        public Criteria andRemarksNotEqualToOrIsNull(String value) {
            addCriterion(ISysPropertyDAO.Remarks + " is null OR " +
                ISysPropertyDAO.Remarks + " <>", value, "remarks");

            return this;
        }

        public Criteria andRemarksNotEqualToForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.Remarks);
            str.append(" <> ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andRemarksNotEqualTo(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.Remarks + " <> ", subQueryBean, dao);

            return this;
        }

        public Criteria andRemarksGreaterThan(String value) {
            addCriterion(ISysPropertyDAO.Remarks + " >", value, "remarks");

            return this;
        }

        public Criteria andRemarksGreaterThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.Remarks);
            str.append(" > ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andRemarksGreaterThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.Remarks + " > ", subQueryBean, dao);

            return this;
        }

        public Criteria andRemarksGreaterThanOrEqualTo(String value) {
            addCriterion(ISysPropertyDAO.Remarks + " >=", value, "remarks");

            return this;
        }

        public Criteria andRemarksGreaterThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.Remarks);
            str.append(" >= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andRemarksGreaterThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.Remarks + " >= ", subQueryBean, dao);

            return this;
        }

        public Criteria andRemarksLessThan(String value) {
            addCriterion(ISysPropertyDAO.Remarks + " <", value, "remarks");

            return this;
        }

        public Criteria andRemarksLessThanForeignKey(java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.Remarks);
            str.append(" < ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andRemarksLessThan(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.Remarks + " < ", subQueryBean, dao);

            return this;
        }

        public Criteria andRemarksLessThanOrEqualTo(String value) {
            addCriterion(ISysPropertyDAO.Remarks + " <=", value, "remarks");

            return this;
        }

        public Criteria andRemarksLessThanOrEqualToForeignKey(
            java.lang.String key) {
            StringBuffer str = new StringBuffer(ISysPropertyDAO.Remarks);
            str.append(" <= ").append(key);
            addForeignKeyCriterion(str.toString());

            return this;
        }

        public Criteria andRemarksLessThanOrEqualTo(
            BaseQueryBean subQueryBean, IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.Remarks + " <= ", subQueryBean, dao);

            return this;
        }

        public Criteria andRemarksLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(ISysPropertyDAO.Remarks + " like", buffer.toString(),
                "remarks");

            return this;
        }

        public Criteria andRemarksNotLike(String value) {
            StringBuffer buffer = new StringBuffer("%");
            buffer.append(value);
            buffer.append("%");
            addCriterion(ISysPropertyDAO.Remarks + " not like",
                buffer.toString(), "remarks");

            return this;
        }

        public Criteria andRemarksIn(List<String> values) {
            if (values.size() == 1) {
                return andRemarksEqualTo(values.get(0));
            } else {
                addCriterion(ISysPropertyDAO.Remarks + " in", values, "remarks");

                return this;
            }
        }

        public Criteria andRemarksNotIn(List<String> values) {
            if (values.size() == 1) {
                return andRemarksNotEqualTo(values.get(0));
            } else {
                addCriterion(ISysPropertyDAO.Remarks + " not in", values,
                    "remarks");

                return this;
            }
        }

        public Criteria andRemarksIn(String[] values) {
            if (values.length == 1) {
                return andRemarksEqualTo(values[0]);
            } else {
                addCriterion(ISysPropertyDAO.Remarks + " in",
                    Arrays.asList(values), "remarks");

                return this;
            }
        }

        public Criteria andRemarksNotIn(String[] values) {
            if (values.length == 1) {
                return andRemarksNotEqualTo(values[0]);
            } else {
                addCriterion(ISysPropertyDAO.Remarks + " not in",
                    Arrays.asList(values), "remarks");

                return this;
            }
        }

        public Criteria andRemarksIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.Remarks + " in ", subQueryBean, dao);

            return this;
        }

        public Criteria andRemarksNotIn(BaseQueryBean subQueryBean,
            IDataAccessInterface<?, ?> dao) {
            addCriterion(ISysPropertyDAO.Remarks + " not in ", subQueryBean, dao);

            return this;
        }

        public Criteria andRemarksBetween(String value1, String value2) {
            addCriterion(ISysPropertyDAO.Remarks + " between", value1, value2,
                "remarks");

            return this;
        }

        public Criteria andRemarksNotBetween(String value1, String value2) {
            addCriterion(ISysPropertyDAO.Remarks + " not between", value1,
                value2, "remarks");

            return this;
        }
    }
}
